草庐IT

c++ - python sys.stdout 和 C++ iostreams::cout

全部标签

string - 如何保存呈现的模板而不是打印到 os.Stdout?

我是Go的新手。我一直在搜索文档。在下面的Playground代码中,它正在屏幕上渲染和打印它。我希望将呈现的文本存储在字符串中,以便我可以从函数中返回它。packagemainimport("os""text/template")typePersonstruct{Namestring//exportedfieldsinceitbeginswithacapitalletter}funcmain(){t:=template.New("sammple")//createanewtemplatewithsomenamet,_=t.Parse("hello{{.Name}}!")//parse

http - 标准库 http 包默认记录到 stdout,我可以禁用它吗?

在Go中使用内置的http模块时,我注意到http.ListenAndServe()将默认对stdout进行日志记录调用。在我的终端中显示的主要内容是:http:TLShandshakeerrorfromx.x.x.x:x:tls:clientofferedanunsupported,maximumprotocolversionof301.现在我明白了这个错误是什么以及导致它的原因,但事实是,我并不特别在意。如何阻止http包(或ListenAndServe()等)默认记录到stdout?它堵塞了我漂亮的控制台。我95%确定我不是记录消息的人,因为我设置的所有日志都有“信息”、“警告”

c++ - 控制台 cout 动画 - C++

我想为我cout-ing的40x20字符block制作动画。我想用system("cls");清除控制台,然后立即出现下一个字符block。目前,下一个街区将采用打字机风格。对于我的问题,最简单的答案就是立即输出一个20行x40个字符的ossstreamcout,而不是像打字机那样处理。主要.cpp:mazeCreator.cout();Sleep(5000);system("cls");输出()voidMazeCreator::cout(){charwallChar=(char)219;charpavedChar=(char)176;charlightChar='';charstar

windows - 如何在 Windows 上访问 Node 中的 stdout.columns?

我正在编写一些Node代码以在控制台的最右侧粘贴一些文本。我的代码运行良好,但每当我调用process.stdout.columns时,它都会说我的窗口是80宽,无论实际宽度是多少。我在Windows7x64上运行cmd.exe。是否仍支持使用process.stdout.columns? 最佳答案 菲利克斯几乎是对的。在Windows中,ttyprocess.stdout.columns的属性由命令提示符窗口属性中的ScreenBufferSize决定。实际宽度由WindowSize决定。两者在windows中不同,但在linux

java - 作为 Windows 服务运行的 Java 应用程序中 STDOUT 存储的位置

我有一个Java应用程序作为Windows服务应用程序的后台进程运行。当发出控制台输出语句时,例如System.out.println,该输出存储在哪里。它是存储在Windows存储中,还是保留在JVM堆存储中? 最佳答案 答案已找到。当创建客户Appender时,第三方库有一种方法不会关闭log4j日志记录的控制台输出。有两种方法可以实现这一点,只有一种方法正确执行了操作。我切换到第二种方法,控制台消息在创建自定义Appender时停止。我重新运行了18小时后失败的作业。现在,它是3.5天(84小时)并且仍然很强劲。因此,可以确定

windows - 如何在 Perl 中线程安全地设置 STDOUT 编码?

根据文档,使用encoding模块与threads不是线程安全的,并且自perl1.18起已弃用。我在Windows7机器上使用perl5.16。我需要将输出转换为windows866编码。尝试运行线程时,以下代码解释器崩溃。useutf8;binmode(STDOUT,':encoding(cp866)');usethreads;my$thr=threads->create(sub{print"потокработает";})->detach();sleep1;print"основнойпотоктакжеработает";如果没有binmode(STDOUT,':cp866'

c - Detecting if stdout is a console with MS Visual compilation, mingw64提供的console

我维护一个生成二进制数据的命令行实用程序。请求时,数据可以重定向到stdout。这在stdout被重定向到管道或文件时有效,但当stdout是一个控制台时,情况就不太一样了,因为它会垃圾控制台。为了保护用户免受此类错误,程序必须检测stdout是否是控制台,并在是时退出。现在,这并不是什么新鲜事,快速浏览一下Internet就会发现多种解决方案。主要缺点是没有“通用”方法,VisualStudio需要自己的风格。我用于Visual的控制台检测器有一个缺陷:它没有检测到stdout是一个控制台当控制台由mingw提供时,我认为这意味着它是mintty。这里是相关的代码部分:#ifdefi

c++ - 当程序作为服务运行时重定向 std::cout

我有一个使用std::cout打印到屏幕的C++程序。有时我需要将其作为服务运行。当它作为Windows服务运行时,有什么方法可以查看cout输出吗?将输出重定向到文件或某种调试程序将是理想的。显然,我可以用写入文件的函数替换cout,这可能是我要做的,但我很想知道是否还有其他解决方案。 最佳答案 基本上有无限的选择。首先想到的是:传递ostream引用你可以传递一个std::ostream引用:voidsomeFunc(std::ostream&out){//someFuncdoesn'tneedtoknowwhetherouti

python - 如何 : workaround of close_fds=True and redirect stdout/stderr on windows

我遇到了一个问题:使用Python2.7,无法使用subprocess.Popen([.......],close_fds=True,stdout=subprocess.PIPE,...)在Windows上,由于限制。在我的例子中需要使用close_fds,因为我不希望子进程继承已经打开的文件文件描述符。这是在库中调用的,这意味着我无法控制已经打开的文件描述符(N标志)。这是一个knownbug,固定在Python3.4+我遇到的问题是:如何在不获取的情况下使用子进程close_fdsisnotsupportedonWindowsplatformsifyouredirectstdin/

c++ - 尝试在 Windows 上重定向标准输出和标准错误 - _fileno(stdout) 返回 -2

这是我的第一个问题!我准备将一些工作良好的C++代码从UNIX移植到Windows,它通过管道将stdout和stderr重定向到自定义GUI组件。我需要它来显示来自第三方库的反馈,该库仅将消息输出到我的GUI上的标准输出。根据这个答案https://stackoverflow.com/a/617158这应该工作。事实上,链接中的代码在使用VisualStudio2017构建的新命令行应用程序中按预期工作。但是在我现有的GUI应用程序中,调用_fileno(stdout)以及_fileno(stderr)两者都返回-2而不是预期值1和2,因此什么也没有发生。将1和2硬编码到相关函数也无